package co.gov.medellin.ssti.sub.model.vo;

import java.io.Serializable;

/**
 * Clase Value Object, Correspondiente al Bean que representa a la tabla
 * Beneficiario Sisben, encapsula los datos en un objeto para un uso mas seguro
 * y eficiente de los datos al enviarse como parametros entre metodos.
 * 
 * Ademas de los campos guardados en la tabla, esta entidad guarda el numero de
 * documento del jefe del hogar, pues sirve para realizar una asociacion rapida
 * por grupo familiar.
 * 
 * @author Consult-Soft S.A.
 * @version 4.0 28/11/2011
 * @since 1.4
 */
public class BeneficiarioSisbenVO implements Serializable {

	/**
	 * Evita que haya problemas de versiones al enviar objetos serializados a
	 * traves de la red o por llamadas RPC y RMI.
	 */
	private static final long serialVersionUID = 6110004278787074963L;

	// ------------------------------------------------------------------------
	// Atributos Locales
	// ------------------------------------------------------------------------

	/**
	 * Valor del tipo de documento con el que se encuentra registrado el
	 * beneficiario, contiene valores numericos del 1-4. (Puede contener 0 si no
	 * posee documento)
	 */
	private String tipoDocumento;

	/**
	 * Valor del Numero de documento con el que se encuentra registrado el
	 * beneficiario. (Puede contener 0 si no posee documento)
	 */
	private String numeroDocumento;

	/**
	 * Valor del primer nombre con el que se encuentra registrado el
	 * beneficiario.
	 */
	private String primerNombre;

	/**
	 * Valor del segundo nombre con el que se encuentra registrado el
	 * beneficiario.
	 */
	private String segundoNombre;

	/**
	 * Valor del primer apellido con el que se encuentra registrado el
	 * beneficiario.
	 */
	private String primerApellido;

	/**
	 * Valor del segundo apellido con el que se encuentra registrado el
	 * beneficiario.
	 */
	private String segundoApellido;

	/**
	 * Valor numerico, puede ser 1/2.
	 */
	private String sexo;

	/**
	 * Fecha de Nacimiento registrada del beneficiario.
	 */
	private String fechaNacimiento;

	/**
	 * Valor numerico del telefono de residencia, puede contener 0000 si no
	 * registro un numero.
	 */
	private String telefono;

	/**
	 * Valor de la direccion de residencia del beneficiario.
	 */
	private String direccion;

	/**
	 * Codigo del barrio de residencia, este corresponde a un codigo solo de la
	 * base de datos del SISBEN.
	 */
	private String barrio;

	/**
	 * Valor numerico de la zona de residencia, solo posee valores 1 / 2.
	 */
	private String zona;

	/**
	 * Valor numerico con el codigo de la comuna en que la que se encuentra el
	 * barrio de residencia.
	 */
	private String comuna;

	/**
	 * Valor numerico para el estado civil del beneficiario, contiene valores
	 * del 1-5.
	 */
	private String estadoCivil;

	/**
	 * Codigo que identifica el tipo de carnet que posee el beneficiario,
	 * valores 0-4
	 */
	private String carnet;

	/**
	 * Valor numerico del nuevo puntaje asignado al beneficiario.
	 */
	private String puntaje;

	/**
	 * Numero de ficha a la que pertenece el hogar de residencia del encuestado.
	 */
	private String ficha;

	/**
	 * Fecha en la que el beneficiario hace parte del SISBEN.
	 */
	private String fechaIngreso;

	/**
	 * Fecha en la que se modifico algun dato del beneficiario.
	 */
	private String fechaModificacion;

	/**
	 * Valor numerico del parentesco del beneficiario con respecto al jefe de
	 * hogar, valores del 1-17
	 */
	private String parentesco;

	/**
	 * Valor numerico sin identificar su funcionalidad, valores del 1-15
	 */
	private String numeroParentesco;

	/**
	 * Valor numerico sin identificar su funcionalidad, valores del 1-29
	 */
	private String tpersona;

	/**
	 * Valor numerico del hogar al que pertenece el beneficiario dentro de su
	 * ficha.
	 */
	private String hogar;

	/**
	 * !!VALOR PENDIENTE!! --- en revision
	 */
	private String thogar;

	/**
	 * Orden de relevancia del beneficiario en el hogar, 1-Jefe, 2-Conyuge,
	 * 3-Hijo, y mas, valores del 1-29
	 */
	private String orden;

	/**
	 * Valor numerico sin identificar su funcionalidad, valores 1 o 2.
	 */
	private String asiste;

	/**
	 * Valor numerico sin identificar su funcionalidad, valores 0-8
	 */
	private String tipoEstado;

	/**
	 * Valor numerico sin identificar su funcionalidad, valores 0-6
	 */
	private String grado;

	/**
	 * Valor numerico para clasificar los beneficiarios del SISBEN, valores 0-6
	 */
	private String nivel;

	/**
	 * Valor numerico sin identificar su funcionalidad, valores 1 o 2.
	 */
	private String jefeug;

	/**
	 * Valor numerico sin identificar su funcionalidad, valores 1-9
	 */
	private String unigasto;

	/**
	 * El nombre del barrio de residencia del beneficiario
	 */
	private String nombreBarrio;

	/**
	 * Codigo de la vereda en la que reside el beneficiario, muy pocos registros
	 * poseen este valor. (default 0)
	 */
	private String vereda;

	/**
	 * Nombre de la vereda en la que reside, este valor por defecto es [barrio
	 * zona urbana].
	 */
	private String nombreVereda;

	/**
	 * Codigo que identifica univocamente un beneficiario en la tabla.
	 */
	private int consecutivo;

	private String jefeTipoDocumento;

	private String jefeNumeroDocumento;

	public String getTipoDocumento() {
		return tipoDocumento;
	}

	public void setTipoDocumento(String tipoDocumento) {
		this.tipoDocumento = tipoDocumento;
	}

	public String getNumeroDocumento() {
		return numeroDocumento;
	}

	public void setNumeroDocumento(String numeroDocumento) {
		this.numeroDocumento = numeroDocumento;
	}

	public String getPrimerNombre() {
		return primerNombre;
	}

	public void setPrimerNombre(String primerNombre) {
		this.primerNombre = primerNombre;
	}

	public String getSegundoNombre() {
		return segundoNombre;
	}

	public void setSegundoNombre(String segundoNombre) {
		this.segundoNombre = segundoNombre;
	}

	public String getPrimerApellido() {
		return primerApellido;
	}

	public void setPrimerApellido(String primerApellido) {
		this.primerApellido = primerApellido;
	}

	public String getSegundoApellido() {
		return segundoApellido;
	}

	public void setSegundoApellido(String segundoApellido) {
		this.segundoApellido = segundoApellido;
	}

	public String getSexo() {
		return sexo;
	}

	public void setSexo(String sexo) {
		this.sexo = sexo;
	}

	public String getFechaNacimiento() {
		return fechaNacimiento;
	}

	public void setFechaNacimiento(String fechaNacimiento) {
		this.fechaNacimiento = fechaNacimiento;
	}

	public String getTelefono() {
		return telefono;
	}

	public void setTelefono(String telefono) {
		this.telefono = telefono;
	}

	public String getDireccion() {
		return direccion;
	}

	public void setDireccion(String direccion) {
		this.direccion = direccion;
	}

	public String getBarrio() {
		return barrio;
	}

	public void setBarrio(String barrio) {
		this.barrio = barrio;
	}

	public String getZona() {
		return zona;
	}

	public void setZona(String zona) {
		this.zona = zona;
	}

	public String getComuna() {
		return comuna;
	}

	public void setComuna(String comuna) {
		this.comuna = comuna;
	}

	public String getEstadoCivil() {
		return estadoCivil;
	}

	public void setEstadoCivil(String estadoCivil) {
		this.estadoCivil = estadoCivil;
	}

	public String getCarnet() {
		return carnet;
	}

	public void setCarnet(String carnet) {
		this.carnet = carnet;
	}

	public String getPuntaje() {
		return puntaje;
	}

	public void setPuntaje(String puntaje) {
		this.puntaje = puntaje;
	}

	public String getFicha() {
		return ficha;
	}

	public void setFicha(String ficha) {
		this.ficha = ficha;
	}

	public String getFechaIngreso() {
		return fechaIngreso;
	}

	public void setFechaIngreso(String fechaIngreso) {
		this.fechaIngreso = fechaIngreso;
	}

	public String getFechaModificacion() {
		return fechaModificacion;
	}

	public void setFechaModificacion(String fechaModificacion) {
		this.fechaModificacion = fechaModificacion;
	}

	public String getParentesco() {
		return parentesco;
	}

	public void setParentesco(String parentesco) {
		this.parentesco = parentesco;
	}

	public String getNumeroParentesco() {
		return numeroParentesco;
	}

	public void setNumeroParentesco(String numeroParentesco) {
		this.numeroParentesco = numeroParentesco;
	}

	public String getTpersona() {
		return tpersona;
	}

	public void setTpersona(String tpersona) {
		this.tpersona = tpersona;
	}

	public String getHogar() {
		return hogar;
	}

	public void setHogar(String hogar) {
		this.hogar = hogar;
	}

	public String getThogar() {
		return thogar;
	}

	public void setThogar(String thogar) {
		this.thogar = thogar;
	}

	public String getOrden() {
		return orden;
	}

	public void setOrden(String orden) {
		this.orden = orden;
	}

	public String getAsiste() {
		return asiste;
	}

	public void setAsiste(String asiste) {
		this.asiste = asiste;
	}

	public String getTipoEstado() {
		return tipoEstado;
	}

	public void setTipoEstado(String tipoEstado) {
		this.tipoEstado = tipoEstado;
	}

	public String getGrado() {
		return grado;
	}

	public void setGrado(String grado) {
		this.grado = grado;
	}

	public String getNivel() {
		return nivel;
	}

	public void setNivel(String nivel) {
		this.nivel = nivel;
	}

	public String getJefeug() {
		return jefeug;
	}

	public void setJefeug(String jefeug) {
		this.jefeug = jefeug;
	}

	public String getUnigasto() {
		return unigasto;
	}

	public void setUnigasto(String unigasto) {
		this.unigasto = unigasto;
	}

	public String getNombreBarrio() {
		return nombreBarrio;
	}

	public void setNombreBarrio(String nombreBarrio) {
		this.nombreBarrio = nombreBarrio;
	}

	public String getVereda() {
		return vereda;
	}

	public void setVereda(String vereda) {
		this.vereda = vereda;
	}

	public String getNombreVereda() {
		return nombreVereda;
	}

	public void setNombreVereda(String nombreVereda) {
		this.nombreVereda = nombreVereda;
	}

	public int getConsecutivo() {
		return consecutivo;
	}

	public void setConsecutivo(int consecutivo) {
		this.consecutivo = consecutivo;
	}

	public String getJefeTipoDocumento() {
		return jefeTipoDocumento;
	}

	public void setJefeTipoDocumento(String jefeTipoDocumento) {
		this.jefeTipoDocumento = jefeTipoDocumento;
	}

	public String getJefeNumeroDocumento() {
		return jefeNumeroDocumento;
	}

	public void setJefeNumeroDocumento(String jefeNumeroDocumento) {
		this.jefeNumeroDocumento = jefeNumeroDocumento;
	}

}